Ray tracing involves a technique for determining a visibility of an object or objects from a given point, such as, but not limited to an “eye” or “camera” point, by following a ray. While such technique theoretically can involve testing a vast number of rays against each and every primitive, this is typically not practical. Instead, designers have used various data structures to identify a subset of such primitives to be involved in the testing, thereby reducing required processing. Examples of such data structures include, but are not limited to a bounding volume hierarchy data structure, scene-graphs, etc.
To date, such data structures have typically been generated utilizing a central processing unit (CPU) or the like. However, any attempt to generate such data structures utilizing a parallel processor architecture (e.g. a graphics processor, etc.) has been problematic. There is thus a need for addressing these and/or other issues associated with the prior art.